package com.zzk.protect.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 
 * @TableName check_detailed
 */
@TableName(value ="check_detailed")
public class CheckDetailed {
    /**
     * 主键ID
     */
    @TableId(value = "id",type = IdType.AUTO)
    private Integer id;

    /**
     * 检查申请ID
     */
    @TableField(value = "check_app_id")
    private Integer checkAppId;

    /**
     * 检查项目ID
     */
    @TableField(value = "check_proj_id")
    private Integer checkProjId;

    /**
     * 科室ID
     */
    @TableField(value = "dept_id")
    private Integer deptId;

    /**
     * 创建时间
     */
    @TableField(value = "creation_time")
    private Date creationTime;

    /**
     * 检查部位
     */
    @TableField(value = "position")
    private String position;

    /**
     * 状态：1-已开立未交费 2-已交费未检查 3-已检查无结果 4-有结果
     */
    @TableField(value = "state")
    private Integer state;

    /**
     * 价格
     */
    @TableField(value = "price")
    private BigDecimal price;

    /**
     * 项目类型：1-检查项 2-检验项 3-处置项
     */
    @TableField(value = "identification")
    private Integer identification;

    /**
     * 检查时间
     */
    @TableField(value = "inspect_time")
    private Date inspectTime;

    /**
     * 检查结果
     */
    @TableField(value = "result")
    private String result;

    /**
     * 结果时间
     */
    @TableField(value = "result_time")
    private Date resultTime;

    /**
     * 操作人ID2
     */
    @TableField(value = "user_id2")
    private Integer userId2;

    /**
     * 操作人ID
     */
    @TableField(value = "user_id")
    private Integer userId;

    /**
     * 删除标记
     */
    @TableField(value = "del_mark")
    private Integer delMark;

    /**
     * 主键ID
     */
    public Integer getId() {
        return id;
    }

    /**
     * 主键ID
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 检查申请ID
     */
    public Integer getCheckAppId() {
        return checkAppId;
    }

    /**
     * 检查申请ID
     */
    public void setCheckAppId(Integer checkAppId) {
        this.checkAppId = checkAppId;
    }

    /**
     * 检查项目ID
     */
    public Integer getCheckProjId() {
        return checkProjId;
    }

    /**
     * 检查项目ID
     */
    public void setCheckProjId(Integer checkProjId) {
        this.checkProjId = checkProjId;
    }

    /**
     * 科室ID
     */
    public Integer getDeptId() {
        return deptId;
    }

    /**
     * 科室ID
     */
    public void setDeptId(Integer deptId) {
        this.deptId = deptId;
    }

    /**
     * 创建时间
     */
    public Date getCreationTime() {
        return creationTime;
    }

    /**
     * 创建时间
     */
    public void setCreationTime(Date creationTime) {
        this.creationTime = creationTime;
    }

    /**
     * 检查部位
     */
    public String getPosition() {
        return position;
    }

    /**
     * 检查部位
     */
    public void setPosition(String position) {
        this.position = position;
    }

    /**
     * 状态：1-已开立未交费 2-已交费未检查 3-已检查无结果 4-有结果
     */
    public Integer getState() {
        return state;
    }

    /**
     * 状态：1-已开立未交费 2-已交费未检查 3-已检查无结果 4-有结果
     */
    public void setState(Integer state) {
        this.state = state;
    }

    /**
     * 价格
     */
    public BigDecimal getPrice() {
        return price;
    }

    /**
     * 价格
     */
    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    /**
     * 项目类型：1-检查项 2-检验项 3-处置项
     */
    public Integer getIdentification() {
        return identification;
    }

    /**
     * 项目类型：1-检查项 2-检验项 3-处置项
     */
    public void setIdentification(Integer identification) {
        this.identification = identification;
    }

    /**
     * 检查时间
     */
    public Date getInspectTime() {
        return inspectTime;
    }

    /**
     * 检查时间
     */
    public void setInspectTime(Date inspectTime) {
        this.inspectTime = inspectTime;
    }

    /**
     * 检查结果
     */
    public String getResult() {
        return result;
    }

    /**
     * 检查结果
     */
    public void setResult(String result) {
        this.result = result;
    }

    /**
     * 结果时间
     */
    public Date getResultTime() {
        return resultTime;
    }

    /**
     * 结果时间
     */
    public void setResultTime(Date resultTime) {
        this.resultTime = resultTime;
    }

    /**
     * 操作人ID2
     */
    public Integer getUserId2() {
        return userId2;
    }

    /**
     * 操作人ID2
     */
    public void setUserId2(Integer userId2) {
        this.userId2 = userId2;
    }

    /**
     * 操作人ID
     */
    public Integer getUserId() {
        return userId;
    }

    /**
     * 操作人ID
     */
    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    /**
     * 删除标记
     */
    public Integer getDelMark() {
        return delMark;
    }

    /**
     * 删除标记
     */
    public void setDelMark(Integer delMark) {
        this.delMark = delMark;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        CheckDetailed other = (CheckDetailed) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getCheckAppId() == null ? other.getCheckAppId() == null : this.getCheckAppId().equals(other.getCheckAppId()))
            && (this.getCheckProjId() == null ? other.getCheckProjId() == null : this.getCheckProjId().equals(other.getCheckProjId()))
            && (this.getDeptId() == null ? other.getDeptId() == null : this.getDeptId().equals(other.getDeptId()))
            && (this.getCreationTime() == null ? other.getCreationTime() == null : this.getCreationTime().equals(other.getCreationTime()))
            && (this.getPosition() == null ? other.getPosition() == null : this.getPosition().equals(other.getPosition()))
            && (this.getState() == null ? other.getState() == null : this.getState().equals(other.getState()))
            && (this.getPrice() == null ? other.getPrice() == null : this.getPrice().equals(other.getPrice()))
            && (this.getIdentification() == null ? other.getIdentification() == null : this.getIdentification().equals(other.getIdentification()))
            && (this.getInspectTime() == null ? other.getInspectTime() == null : this.getInspectTime().equals(other.getInspectTime()))
            && (this.getResult() == null ? other.getResult() == null : this.getResult().equals(other.getResult()))
            && (this.getResultTime() == null ? other.getResultTime() == null : this.getResultTime().equals(other.getResultTime()))
            && (this.getUserId2() == null ? other.getUserId2() == null : this.getUserId2().equals(other.getUserId2()))
            && (this.getUserId() == null ? other.getUserId() == null : this.getUserId().equals(other.getUserId()))
            && (this.getDelMark() == null ? other.getDelMark() == null : this.getDelMark().equals(other.getDelMark()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getCheckAppId() == null) ? 0 : getCheckAppId().hashCode());
        result = prime * result + ((getCheckProjId() == null) ? 0 : getCheckProjId().hashCode());
        result = prime * result + ((getDeptId() == null) ? 0 : getDeptId().hashCode());
        result = prime * result + ((getCreationTime() == null) ? 0 : getCreationTime().hashCode());
        result = prime * result + ((getPosition() == null) ? 0 : getPosition().hashCode());
        result = prime * result + ((getState() == null) ? 0 : getState().hashCode());
        result = prime * result + ((getPrice() == null) ? 0 : getPrice().hashCode());
        result = prime * result + ((getIdentification() == null) ? 0 : getIdentification().hashCode());
        result = prime * result + ((getInspectTime() == null) ? 0 : getInspectTime().hashCode());
        result = prime * result + ((getResult() == null) ? 0 : getResult().hashCode());
        result = prime * result + ((getResultTime() == null) ? 0 : getResultTime().hashCode());
        result = prime * result + ((getUserId2() == null) ? 0 : getUserId2().hashCode());
        result = prime * result + ((getUserId() == null) ? 0 : getUserId().hashCode());
        result = prime * result + ((getDelMark() == null) ? 0 : getDelMark().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", checkAppId=").append(checkAppId);
        sb.append(", checkProjId=").append(checkProjId);
        sb.append(", deptId=").append(deptId);
        sb.append(", creationTime=").append(creationTime);
        sb.append(", position=").append(position);
        sb.append(", state=").append(state);
        sb.append(", price=").append(price);
        sb.append(", identification=").append(identification);
        sb.append(", inspectTime=").append(inspectTime);
        sb.append(", result=").append(result);
        sb.append(", resultTime=").append(resultTime);
        sb.append(", userId2=").append(userId2);
        sb.append(", userId=").append(userId);
        sb.append(", delMark=").append(delMark);
        sb.append("]");
        return sb.toString();
    }
}